Questão 48 - Retirada do CONCURSO PÚBLICO Nº 01/2023 do GRUPO HOSPITALAR CONCEIÇÃO – GHC da FUNDATEC para o cargo de programador.
<?php
$nome = "Jhon";
$email = "jo@abc.com";
if (empty($nome) && empty($email) && empty($mensagem))
{
echo "Por favor, preencha todos os campos.";
} else {
echo "O formulário foi preenchido corretamente!";
}
?>
Apesar da variável $mensagem não ter sido nem declarada, é apresentada a mensagem “O formulário foi preenchido corretamente!”. Qual das linhas abaixo apresenta uma modificação que corrigiria o comportamento do programa para que apresentasse a mensagem, pedindo o preenchimento dos campos quando algum não estivesse preenchido e que apresentasse a mensagem "O formulário foi preenchido corretamente!" quando todos os campos fossem preenchidos?
A) if (isset($nome) && isset($email) && isset($mensagem))
B) if (!isset($nome) && !isset($email) && isset($mensagem))
C) if (!empty($nome) && !empty($email) && !empty($mensagem))
D) if (!empty($nome) || !empty($email) || empty($mensagem))
E) if (empty($nome) || empty($email) || empty($mensagem))
A alternativa correta é a letra E.
Isso ocorre porque a condição if verifica se as variáveis $nome, $email e $mensagem estão vazias. Se alguma das variáveis estiver preenchida, a condição não será satisfeita e a mensagem de formulário preenchido corretamente será exibida. Caso contrário, a mensagem de preenchimento dos campos será exibida.
Porque as outras estão erradas?
A) if (isset($nome) && isset($email) && isset($mensagem))
A alternativa A está incorreta porque a função isset() verifica apenas se a variável está definida, e não se ela está vazia ou preenchida.
B) if (!isset($nome) && !isset($email) && isset($mensagem))
A alternativa B está incorreta porque a condição !isset($nome) && !isset($email) && isset($mensagem) verifica se $nome e $email não estão definidos e se $mensagem está definida. Isso não garante que os campos estejam preenchidos.
C) if (!empty($nome) && !empty($email) && !empty($mensagem))
A alternativa C está incorreta porque a condição !empty($nome) && !empty($email) && !empty($mensagem) verifica se as variáveis não estão vazias. Como $mensagem não foi definida, ela não pode ser verificada e a condição não será satisfeita.
D) if (!empty($nome) || !empty($email) || empty($mensagem))
A alternativa D está incorreta porque a condição !empty($nome) || !empty($email) || empty($mensagem) verifica se pelo menos uma das variáveis não está vazia ou se $mensagem está vazia. Isso não garante que todos os campos estejam preenchidos.
Essa questão trata de um código em linguagem PHP que verifica se um formulário foi preenchido corretamente. O código utiliza a função empty() para verificar se as variáveis $nome, $email e $mensagem estão vazias.
A questão pede para identificar qual das opções apresenta uma modificação que corrigiria o comportamento do programa para que apresentasse a mensagem, pedindo o preenchimento dos campos quando algum não estivesse preenchido e que apresentasse a mensagem "O formulário foi preenchido corretamente!" quando todos os campos fossem preenchidos.
Essa questão está relacionada a programação em linguagem PHP, mais especificamente sobre a utilização da função empty() e isset() para verificar se uma variável está vazia e a utilização de estruturas condicionais if para controlar o fluxo do programa.
Para responder a essa questão, é necessário ter conhecimentos básicos em programação em linguagem PHP, incluindo a utilização de variáveis, funções e estruturas condicionais. É importante entender como as funções empty() e isset() funcionam e como elas podem ser utilizada para verificar se uma variável está vazia.
Essa função retorna TRUE se a variável estiver vazia, com valor null ou zero.
Ou seja serve para verificar se uma variável é null.
O único parâmetro que ela recebe é a variável a ser conferida
Para saber se a variável tem conteúdo pode ser usado "!empty($variavel)".
Essa função predefinida retorna TRUE se a variável foi iniciada, ou seja se ela foi criada e inserido algum valor nela, se não retorna FALSE.
O único parâmetro que ela recebe é a variável a ser conferida
Ela é praticamente o oposto da função empty().